package com.ruoyi.applet.mapper;

import com.ruoyi.applet.domain.WechatUser;

import java.math.BigDecimal;
import java.util.List;

/**
 * weChatUserMapper接口
 *
 * @author PengFei
 * @date 2022-05-31
 */
public interface WechatUserMapper {
    /**
     * 查询weChatUser
     *
     * @param userId weChatUser主键
     * @return weChatUser
     */
    WechatUser selectWechatUserByUserId(Long userId);


    WechatUser selectWechatUserByOpenid(String openid);

    /**
     * 查询weChatUser列表
     *
     * @param wechatUser weChatUser
     * @return weChatUser集合
     */
    List<WechatUser> selectWechatUserList(WechatUser wechatUser);

    /**
     * 新增weChatUser
     *
     * @param wechatUser weChatUser
     * @return 结果
     */
    int insertWechatUser(WechatUser wechatUser);

    /**
     * 修改weChatUser
     *
     * @param wechatUser weChatUser
     * @return 结果
     */
    int updateWechatUser(WechatUser wechatUser);

    int updateWechatUserByOpenid(WechatUser wechatUser);

    /**
     * 删除weChatUser
     *
     * @param userId weChatUser主键
     * @return 结果
     */
    int deleteWechatUserByUserId(Long userId);

    /**
     * 批量删除weChatUser
     *
     * @param userIds 需要删除的数据主键集合
     * @return 结果
     */
    int deleteWechatUserByUserIds(Long[] userIds);


    /*
     *
     *获取队伍成员最大的兑换天数
     * @return int
     * @author PengFei Deng
     * @date 2022/5/31 16:32
     */
    Integer getMaxDaySumByTeamId(Long teamId);


    List<WechatUser> getPeopleRankingList(WechatUser wechatUser);


    int getSitePeopleSum(BigDecimal mileage);


    int updateUserNumberByUserId(WechatUser wechatUser);


    Integer getUserRankInRankList(Long userId);


}
